Coordination and Concurrency in Multi-engine Prolog

نویسنده

  • Paul Tarau
چکیده

We discuss the impact of the separation of logic engines (independent logic processing units) and multi-threading on the design of coordination mechanisms for a Prolog based agent infrastructure. We advocate a combination of coroutining constructs with focus on expressiveness and a simplified, multi-threading API that ensures optimal use available parallelism. In this context, native multi-threading is made available to the application programmer as a set of high-level primitives with a declarative flavor while cooperative constructs provide efficient and predictable coordination mechanisms. As illustrations of our techniques, a parallel fold operation as well as cooperative implementations of Linda blackboards and publish/subscribe are described.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Applying Coupled Resolution Engines to Knowledge Bases

As part of Alvey project IKBS 90, a software architecture has been developed that couples a concurrent logic programming or CLP engine with a multi-threaded Prolog engine. Concurrency among mutually invoking Prolog and CLP computations is sustained partly through and-parallel execution of CLP computations on the CLP engine, and partly by executing multiple Prolog processes and a CLP engine unde...

متن کامل

Autonomous Agents Coordination: Action Description Languages Meet CLP(FD) and Linda

The paper presents a knowledge representation formalism for multi-agent systems, where different autonomous agents reason and act in a shared environment. Agents are autonomously pursuing individual goals, but are capable of interacting through a shared knowledge repository and collaborative actions. In their interaction through shared portions of the world, agents deal with problems of synchro...

متن کامل

Towards multi-threaded local tabling using a common table space

Multi-threading is currently supported by several well-known Prolog systems providing a highly portable solution for applications that can benefit from concurrency. When multithreading is combined with tabling, we can exploit the power of higher procedural control and declarative semantics. However, despite the availability of both threads and tabling in some Prolog systems, the implementation ...

متن کامل

Autonomous agents coordination: Action languages meet CLP() and Linda

The paper presents a knowledge representation formalism, in the form of a high-level Action Description Language (ADL) for multi-agent systems, where autonomous agents reason and act in a shared environment. Agents are autonomously pursuing individual goals, but are capable of interacting through a shared knowledge repository. In their interactions through shared portions of the world, the agen...

متن کامل

Kelpie: a Concurrent Logic Programming System for Knowledge Based Applications

A software architecture that interfaces a concurrent logic programming system to a Prolog database machine is described. The concurrent logic programming system connects a guarded clause inference engine with a definite clause inference engine to support concurrent execution of mutually invoking guarded and definite clause programs. An interface to a Prolog database machine allows the concurren...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011